Skip to main content

Helm Chart Deployment

This guide provides step-by-step instructions on how to deploy SyncNow using Helm. The Helm chart simplifies the deployment and configuration of SyncNow on a Kubernetes cluster.

Prerequisites

Before deploying SyncNow with Helm, ensure you have the following:

  • A running Kubernetes cluster
  • Helm installed (Installation Guide)
  • Access to a container registry hosting the SyncNow image

Installing the Helm Chart

  1. Add the SyncNow Helm repository (if applicable):

    helm repo add syncnow-repo https://repo.syncnow.io/repository/syncnow-helm-prod-local/
    helm repo update
    
  2. Install the chart using default values:

    helm install syncnow syncnow-repo/syncnow
    
  3. To customize the installation, create a values.yaml file and override default settings:

    replicaCount: 2
    image:
      repository: repo.syncnow.io:8100/syncnowserver
      tag: "latest"
      pullPolicy: IfNotPresent
    env:
      LOGGING_LOGLEVEL_DEFAULT: "Information"
      SETTINGS_DATABASECONFIGURATION_SERVER: "db.syncnow.local"
      SETTINGS_DATABASECONFIGURATION_PORT: 5432
    ingress:
      enabled: true
      hosts:
        - host: syncnow.example.com
          paths:
            - path: /
              pathType: ImplementationSpecific
    

refer to Environment Variables Configuration Parameters

  1. Deploy with custom values:
    helm install syncnow syncnow-repo/syncnow -f values.yaml
    

Configuration Options

Below are key configurable options available in values.yaml:

Replica Count

Sets the number of replicas for the application:

replicaCount: 1

Image Configuration

Defines the container image settings:

image:
  repository: repo-images.syncnow.io/syncnowserver
  pullPolicy: IfNotPresent
  tag: "latest"

Environment Variables

Configures SyncNow application settings:

env:
  LOGGING_LOGLEVEL_DEFAULT: "Warning"
  SETTINGS_DATABASECONFIGURATION_SERVER: "localhost"
  SETTINGS_DATABASECONFIGURATION_PORT: 5432

Service Configuration

Defines the service type and ports:

service:
  type: ClusterIP
  port: 5030

Ingress Configuration

If you want to expose SyncNow externally, enable and configure ingress:

ingress:
  enabled: true
  hosts:
    - host: syncnow.example.com
      paths:
        - path: /
          pathType: ImplementationSpecific

Resource Limits

Configures resource allocation:

resources:
  limits:
    cpu: 500m
    memory: 512Mi
  requests:
    cpu: 250m
    memory: 256Mi

Upgrading SyncNow

To upgrade the deployment when a new chart version is available:

helm upgrade syncnow syncnow-repo/syncnow -f values.yaml

Uninstalling SyncNow

To remove SyncNow from the cluster:

helm uninstall syncnow

This will delete all resources associated with the release.